Data stored in a memory, such as a non-volatile memory, may cause wearing of the memory. For example, programming memory cells to have a high threshold voltage (e.g., corresponding to a logical “0” value) may cause wearing of the cells faster than programming the cells to a lower threshold voltage or maintaining the cells in an erase state (e.g., corresponding to a logical “1” value). To reduce wear, data may be “shaped” prior to being stored in the memory. Shaped data may include fewer bits having a particular logical value (e.g., a logical “0” value) such that writing the shaped data to the memory reduces wear by reducing the number of cells programmed with a high threshold voltage. However, in cases where the data is uniformly random, shaping data increases the size of data (e.g., shaped data is larger than unshaped input data). In some examples, data (such as a code word including a data portion and parity portion) is to be stored at the memory. However, in cases where the data is not random, data shaping techniques can shape the data portion but not the parity portion as the parity portion is still uniformly random. One technique for reducing wear on cells caused by storing the unshaped parity data to specific cells in the array is to shift a position of the unshaped parity data in a code word prior to storage at the memory so that the unshaped parity data is written to different physical storage elements (e.g., same physical word line) during different write cycles. However, shifting the position of the unshaped parity data and detecting a location of the unshaped parity data when decoding increases complexity and cost of a data storage device.